# 1、使用[]直接创建
# 2、使用内置函数list()创建
import random

# list1 = ['北京', 'lily', 3, 4]
# print(list1)
#
# list2 = list(['hello', '你好'])
# print(list2)
#
# list3 = list(range(1, 10, 2))
# print(list3)
#
# # 列表是序列的一种，对序列的操作均可对列表使用
# print(list1 + list2 + list3)
# print(len(list3))
# print(max(list3))
# print(min(list3))
#
# print(list3.index(5))
# print(list1.count(3))
#
# list4 = [10, 20, 30]
# print(list4)
# del list4
# print(list4)

# 列表的遍历
# list5 = ['python', 'Java', 'php', 'c++', 'js']
# print(id(list5))
# for item in list5:
#     print(item)
#
# for i in range(0, len(list5)):
#     print(i, list5[i])
#
# for index, item in enumerate(list5, start=1):
#     print(index, item)
#
# for index, item in enumerate(list5, 2):
#     print(index, item)

# 列表的增删改查
# 元素个数可变，但是内存地址不变，所以叫可变数据类型
# list5.append('sql')
# print('增加元素:', list5.pop(), id(list5))
#
# list5.insert(1, 100)
# print(list5)
#
# list5.remove('php')
# print(list5, id(list5))
#
# print(list5.pop(1))
# print(list5)
#
# list5.clear()
# print(list5, id(list5))

# list5.reverse()
# print(list5)
# print(list5.reverse())  # reverse()无返回值

# new_list=list5.copy()
# print(list5,id(new_list))

# list5[1] = 'webGl'
# print(list5)

# list6 = [5, 2, 1, 3, 7]
# list6.sort(reverse=False)
# print('默认升序', list6)
#
# list6.sort(reverse=True)
# print('降序', list6)

# # 忽略大小写进行排序
# list5.sort(key=str.lower)
# print(list5)
#
# # 使用内置函数排序
# asc_list = sorted(list5)
# print(asc_list)
#
# desc_list = sorted(list5, reverse=True)
# print(desc_list)

# 列表生成式的语法结构 list=【表达式 for item in range()】
# list=【表达式 for item in range() if condetion】
# list7 = [item for item in range(1, 11)]
# print(list7)
#
# list7 = [item*item for item in range(1, 11)]
# print(list7)
#
# list7 = [random.randint(1, 100) for _ in range(10)]
# print(list7)
#
# list7 = [i for i in range(10) if i % 2 == 0]
# print(list7)

# # 二维列表
# list8 = [
#     ['城市', '环比', '同比'],
#     ['北京', '101', '32'],
#     ['上海', '102', '49'],
#     ['广州', '103', '57']
#
# ]
# print(list8)

# for row in list8:  # 遍历行
#     for item in row:  # 遍历列
#         print(item, end='\t')
#     print()
#
# list8 = [[j for j in range(5)] for i in range(4)]
# print(list8)
